use std::collections::HashMap;
#[test]
fn test_hash(){
    let mut h = HashMap::new();
    // 插入元素
    h.insert("name", "james");
    h.insert("age", "18");
    // 第一种方式迭代器遍历
    h.iter().for_each(|(k,v)|{
        println!("{}:{}", k, v);
    });
    // 推荐方式：第二种方式for-in遍历，支持break;
    for (&key,&item) in &h {
        println!("{}-{}", key, item);
        break;
    }
    println!("{}", h.len());
    let x =  h.remove("names")
        .ok_or("err1")
        .unwrap_or_else(|_err| {"value2"});
    println!("{}", x);

    // 推荐方式： if let方式判断Option返回值是否成功
    if let Some(v) = h.get("name") {
        println!("got {}", v);
    }else {
        println!("not got.");
    }

}
